11 research outputs found
A Reflective Theorem Prover for the Connection Calculus
Rewriting logic can be used to prototype systems for automated
deduction. In this paper, we illustrate how this approach allows
experiments with deduction strategies in a flexible and conceptually
satisfying way.
This is achieved by exploiting the reflective property of rewriting
logic. By specifying a theorem prover in this way one quickly
obtains a readable, reliable and reasonably efficient system which
can be used both as a platform for tactic experiments and as a basis
for an optimized implementation. The approach is illustrated by
specifying a calculus for the connection method in rewriting logic
which clearly separates rules from tactics
Basic completion strategies as another application of the Maude strategy language
The two levels of data and actions on those data provided by the separation
between equations and rules in rewriting logic are completed by a third level
of strategies to control the application of those actions. This level is
implemented on top of Maude as a strategy language, which has been successfully
used in a wide range of applications. First we summarize the Maude strategy
language design and review some of its applications; then, we describe a new
case study, namely the description of completion procedures as transition rules
+ control, as proposed by Lescanne.Comment: In Proceedings WRS 2011, arXiv:1204.531
Efficient Rule-Matching for Automated Coherent Logic
Coherent logic is a syntactically defined fragment of first-order logic. The paper describes an experiment with a prover for coherent logic. A prover here means software that takes as input a theory in coherent logic, and (if it halts) either outputs a proof of a contradiction in the theory, or a model of the theory.
Existing provers for coherent logic typically spend much of their time in the process of matching inferred literals with the negative literals of the input clauses. We present an alternative to this matching process by applying a modified version of the Rete algorithm [6]. The Rete algorithm was developed in the 1970s for production systems in artificial intelligence. We exploit the similarities between coherent logic and production systems in order to make the Rete algorithm solve the matching problem. We also investigate the effect of working on several independent branches present in proof search in coherent logic but not in production systems.
NIK: Norsk Informatikkonferanse. 2012 (25-36). http://www.nik.no
Efficient Rule-Matching for Hyper-Tableaux
Over the past decades, a number of calculi for automated reasoning have been proposed that share some core features: 1. proofs are built in a tableau/sequent style as trees where nodes are labeled with literals, and 2. these proofs are expanded by interpreting the problem clause set as a set of rules, and requiring all negative literals in clauses to present on a branch for expansion. This applies to hyper-tableaux [1], MGTP [7], coherent logic [3, 4], and others. Existing implementations typically spend much of their time in the process of matching branch literals with the negative literals of the input clauses. We present an alternative to this matching process by applying a modified version of the RETE algorithm [6]. The RETE algorithm was developed in the 1970s for production systems in artificial intelligence. We exploit the similarities between the mentioned calculi and production systems in order to make the RETE algorithm solve the matching problem. We also investigate the effect of working on several independent branches present in tableau proof search but not in production systems.
Proof Search for the First-Order Connection Calculus in Maude
This paper develops a rewriting logic specification of the connection method for first-order logic, implemented in Maude. The connection method is a goal-directed proof procedure that requires a careful control over clause copies. The specification separates the inference rule layer from the rule application layer, and implements the latter at Maude’s meta-level. This allows us to develop and compare different strategies for proof search. Keywords: First-order logic, connection method, rewriting logic, reflection, meta-programming, Maude